-
Notifications
You must be signed in to change notification settings - Fork 12
fix: clear cache and retry on cvmfs installation failure #48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
| sudo rm -rf /var/cache/apt/archives | ||
| sudo rm -rf /var/cache/apt/lists | ||
| sudo apt-get -q update | ||
| sudo apt-get -q -y install cvmfs |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know this is unlikely to fail again, but you should probably check anyway given why you are introducing this change
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I just don't think this PR is the right solution. If you look at your original failing pipeline: https://github.com/DUNE-DAQ/daq-release/actions/runs/16244930712/job/45866367226#step:3:58, you'll see that it is already running in bash -e, so doing something like if [ $? -ne 0 ] is not going to catch this since we probably don't even return a failing exit code from apt-get install (or we would have bailed out earlier).
I have been trying to find some way to trigger this issue (GHA or locally), but no luck so far.
|
What about caching ( by default ) only the debs, not the lists? I don't think we can hit this error in that case. Add the current behavior as an opt-in parameter, if you care about speed but don't mind to clear the cache once in a while. |
|
Maybe the solution here is not to use apt at all. We could either use our service container (once it supports autofs, should be soon) or build a statically linked cvmfs2 binary that bundles all dependencies. The latter would also make cvmfsexec significantly simpler. |
Can you really avoid all the dependencies with a static build? https://github.com/cvmfs-contrib/github-action-cvmfs/actions/runs/21126022183/job/60747366609#step:3:163 Container would be interesting to explore but likely a larger download than the current installation, which may make it slower over all. |
This PR fixes #43 by clearing the cache and retrying when
cvmfsfails to install.